Virtual Channels (VCs) in a computing network may create multiple logical data paths across a single physical link or connection in the computing network such that a physical channel may support several virtual channels multiplexed across the physical channel. These VCs may allocate their own network resources such as queues and buffer-to-buffer credits. Each unidirectional VC may be realized by an independently managed pair of (flit) buffers, Different packets can then share the physical channel on a flit-by-flit basis. VCs may avoid deadlock and reduce wormhole blocking in networks and may further improve network latency and throughput. In addition, VCs may be used to construct Adaptive Networking services.